0 GOSUB60100:PRINT"[147]":X=RND(-TI):POKE53280,13:POKE53281,1 5 PRINT""SPC(12)"BULLS AND BEARS[146]":PRINT"" 10 DIMN$(20),D(20),P(20),C(20),P1(20),P2(20),SP(12),B(20),I$(9),S(20) 15 C=7:GOSUB980:PRINT"[144]NUMBER OF PLAYERS (1/2)" 16 GETA$:IFA$<"1"ORA$>"2"THEN16 17 NP=VAL(A$) 20 IFNP>2ORNP<1THENPRINT"[145][145]":GOTO15 25 C=9:GOSUB980:PRINT"[144]PLAYER 1 INITIALS:";:AL=1:NU=.:LE=3:GOSUB60500:P1$=C$ 30 IFLEN(P1$)<>3THENPRINT"[145][145][145]":GOTO25 35 IFNP=1THEN50 40 PRINT:GOSUB980:PRINT"PLAYER 2 INITIALS:";:GOSUB60500:P2$=C$ 45 IFLEN(P2$)<>3THENPRINT"[145][145][145]":GOTO40 50 YR=1:I3=6:M(1)=10000:M(2)=10000:PL=1 55 FORX=1TO12:READN$(X),D(X):P(X)=100:NEXT 60 P(11)=120:FORX=1TO8:READI$(X):NEXT:FORX=13TO20:READN$(X),P(X):NEXT 65 PRINT"[147]":S1=0:S2=0:FORX=1TO20:S1=S1+P1(X)*P(X):S2=S2+P2(X)*P(X):NEXT 70 N1=INT(M1*.02):N2=INT(M2*.02) 75 IFM(1)<0THENN1=N1-INT(M(1)*.02) 80 IFM(2)<0THENN2=N2-INT(M(2)*.02) 85 M(1)=M(1)-N1+D1:M(2)=M(2)-N2+D2:T1=S1+M(1)-M1:T2=M(2)+S2-M2 90 PRINT" YEAR:"YR" QUARTER:"Q:GOSUB1025 95 PRINTTAB(18)P1$:PRINTTAB(18)"[192][192][192]" 100 PRINT"STOCKS"SPC(15-LEN(STR$(S1)))""S1 105 IFM(1)<0THENPRINT"[144]CASH"SPC(17-LEN(STR$(M(1))))""M(1):GOTO115 110 PRINT"[144]CASH"SPC(17-LEN(STR$(M(1))))""M(1) 115 PRINT"[144]DIVIDENDS"SPC(12-LEN(STR$(D1)))""D1 120 PRINT"[144]MARGINS"SPC(14-LEN(STR$(M1)))""M1 125 PRINT"[144]INTEREST"SPC(13-LEN(STR$(N1)))""N1 130 PRINTSPC(15)"[144][192][192][192][192][192][192]":PRINT"TOTAL"SPC(16-LEN(STR$(T1)))T1 135 IFNP=1THEN175 140 PRINT""SPC(30)"[144]"P2$:PRINTSPC(30)"[192][192][192]" 145 PRINTSPC(33-LEN(STR$(S2)))""S2 150 IFM(2)<0THENPRINTSPC(33-LEN(STR$(M(2))))""M(2):GOTO160 155 PRINTSPC(33-LEN(STR$(M(2))))""M(2) 160 PRINTSPC(33-LEN(STR$(D2)))""D2 165 PRINTSPC(33-LEN(STR$(M2)))""M2:PRINTSPC(33-LEN(STR$(N2)))N2 170 PRINTSPC(27)"[144][192][192][192][192][192][192]":PRINTSPC(33-LEN(STR$(T2)))T2 175 PRINT:PRINT:PRINT"PRESS SPACE[146] TO CONTINUE OR Q[146] TO QUIT":POKE198,0 180 GETA$:IFA$=""THEN180 182 IFA$="Q"THEN60000 185 IFA$<>CHR$(32)THEN180 190 IFBR(1)=1ORBR(2)=1THEN1105 195 IFYR=10ANDQ=4THEN1105 200 PRINT"[147]":GOSUB1090 205 IFEN>9THENY=Y-1 210 IFEN<-5THENY=Y+1 215 EN=EN+Y:C1=Y:GOSUB1090 220 IFI1>9THENY=Y-1 225 IFI1<-5THENY=Y+1 230 I1=I1+C1+Y:C2=C1+Y:GOSUB1090 235 IFY=-2THENY=0 240 I2=I2+C2+Y:C3=C2+Y:GOSUB1090:I3=I3+Y:C4=Y 245 IFI2<-6THENI2=I2+1:C3=C3+1 250 IFI1-I3>2THENI3=I3+1:C4=C4+1 255 IFI1-I3<-2THENI3=I3-1:C4=C4-1 260 IFI3<2THENI3=2:C4=0 265 IFI3<5THENI1=I1+1:C2=C2+1 270 IFI3>12THENI1=I1-1:C2=C2-1 275 D(12)=I3-2 280 IFD(12)<4THEND(12)=4 285 IFD(12)>9THEND(12)=9 290 GOSUB1100:C(1)=(C3-C4)*Y:C(11)=-(10*C4) 295 IFP(11)>160THENC(11)=0 300 IFP(11)<70THENC(11)=C(11)+5 305 GOSUB1100:C(4)=(C2+C3)*Y:GOSUB1100:C(5)=(C2+C3)*Y-2 310 GOSUB1100:C(9)=C1*Y*2:GOSUB1100:C(7)=(C3-C4-C1)*Y 315 GOSUB1100:C(6)=C3*Y:GOSUB1100:C(3)=-(C1+C4)*Y*2 320 GOSUB1100:C(10)=(C2+C4)*Y*2:GOSUB1100:C(2)=-(C2+C4)*Y*2 325 GOSUB1100:C(8)=-C1*Y:C(9)=C(9)+C1:C(10)=C(10)+(5*C2):GOSUB1100 330 IFI2>5THENC(4)=C(4)+Y:C(7)=C(7)+Y:C(6)=C(6)+Y 335 IFI2<0THENC(4)=C(4)-Y:C(7)=C(7)-(Y*2):C(6)=C(6)-(Y*2) 340 GOSUB1100 345 IFI3>10THENC(1)=C(1)-(2*Y):C(2)=C(2)-(3*Y):C(3)=C(3)-Y 350 IFI3<5THENC(1)=C(1)+(2*Y):C(2)=C(2)+(3*Y):C(3)=C(3)+Y 355 FORX=1TO10:Y=INT(RND(1)*10) 360 IFY>6THENY=Y-10 365 C(X)=C(X)+(2*Y):NEXT 370 FORX=1TO11 375 IFB(X)=1THENP(X)=100:B(X)=0 380 P(X)=P(X)+C(X) 385 IFP(X)=<0THENP(X)=0:B(X)=1 390 IFP(X)>199THENP(X)=INT(P(X)/2):SP(X)=1 395 NEXT 400 FORX=1TO10:IFSP(X)=0THENNEXT:GOTO410 405 P1(X)=P1(X)*2:P2(X)=P2(X)*2:SP(X)=1:NEXT 410 FORX=13TO(12+IP) 415 IFB(X)=0THENNEXTX:GOTO430 420 IFB(X)=1THENB(X)=2 425 NEXT 430 FORX=13TO(12+IP):GOSUB1090:P(X)=P(X)+Y 435 IFP(X)>0THENNEXT:GOTO450 440 IFB(X)=2THENNEXT:GOTO450 445 P1(X)=0:P2(X)=0:P(X)=0:B(X)=1:NEXT 450 Q=Q+1:IFQ=5THENQ=1:YR=YR+1 455 IFNP=1ORPL=1THEN470 460 PL$=P2$:M=M(2):MT=M2:TL=M-MT 463 FORX=1TO20:S(X)=P2(X):TL=TL+S(X)*P(X):NEXT 465 GOTO475 470 PL$=P1$:M=M(1):MT=M1:TL=M-MT 473 FORX=1TO20:S(X)=P1(X):TL=TL+S(X)*P(X):NEXT 475 GOSUB1035:IFTL<0THENBR(PL)=1 480 PRINT"[147]":PRINT"YEAR:"YR" QUARTER:"Q" PLAYER: "PL$ 485 PRINT"[144]STK DIV PRC CHG SHRS [221]STK PRC SHRS" 490 PRINT"[192][192][192] [192][192][192] [192][192][192] [192][192][192] [192][192][192][192] [221][192][192][192] [192][192][192] [192][192][192][192]" 495 FORX=1TO12:Y=LEN(STR$(S(X))):Y1=LEN(STR$(P(X))):Z=LEN(STR$(C(X))) 500 PRINT""N$(X)" "D(X)SPC(4-Y1)P(X)SPC(3-Z)C(X)SPC(6-Y)S(X)"[144][221]":NEXT 505 PRINT"[192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][189]" 510 IFPL=2THEN585 515 IFQ<>1ORYR>8THEN525 520 GOSUB1030:NW=1:IP=IP+1:PRINTSPC(6)"NEW ISSUE: "I$(IP) 525 FORX=1TO12+IP 530 IFB(X)<>1THENNEXT:GOTO545 535 IFNW=0THENGOSUB1030:NW=1 540 PRINTSPC(6)""N$(X)" DECLARES BANKRUPTCY":NEXT 545 FORX=1TO11 550 IFSP(X)=0THENNEXT:GOTO565 555 IFNW=OTHENGOSUB1030:NW=1 560 PRINTSPC(6)""N$(X)" DECLARES 2-FOR-1 SPLIT":SP(X)=0:NEXT 565 IFNW=0THEN585 570 FORX=1TO3000:NEXT 575 NW=0:L=15:GOSUB985 580 FORX=1TO6:PRINTSPC(5)" ":NEXT 583 L=15:GOSUB985 585 PRINT"[145]"SPC(23)"[144][179]" 590 IFBR(PL)=1THENPRINT" BANKRUPT[146]":PRINT"[145]"SPC(23)"[144][221]":GOTO605 595 IFMC>0THENPRINT:GOTO605 600 PRINT" [144]B[146]UY S[146]ELL E[146]XIT [221]" 605 PRINT"[192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][178][192][192][192][192][192][192][192][192][192][192][192][192][192][189]" 610 PRINT"":PRINT:PRINT 615 FORX=13TO12+IP:Y=LEN(STR$(S(X))):Z=9-LEN(STR$(P(X))) 620 IFB(X)=2THENNEXT:GOTO630 625 PRINTSPC(24)"[156]"N$(X)" "P(X)SPC(Z-Y)S(X):NEXT 630 L=10:GOSUB985:PRINTSPC(23)"[144][171][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192]" 635 PRINTSPC(26)" [129]INDEXES[146]" 640 PRINTSPC(24)" ENERGY "EN:PRINTSPC(24)" ECONOMY "I2 645 PRINTSPC(24)" INTEREST "I3:PRINTSPC(24)" INFLATION "I1 650 PRINTSPC(23)"[144][177][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192]" 655 PRINT"CASH="M:PRINT"COMM="CM:PRINT"MARG="MT 660 PRINT"[145][145][145]"SPC(15)"[144][221]":PRINTSPC(15)"[221]":PRINTSPC(15)"[221]" 665 PRINT"[192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][177][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192]" 670 IFBR(PL)=0THEN680 675 FORX=1TO2000:NEXT:GOTO1050 680 IFMC=0THEN700 685 L=15:GOSUB985:PRINT" MARGIN CALL:[146]"MC 690 PRINT"[145]"SPC(23)"[144][221]" 695 GOSUB825:MC=MC-X:IFMC>0THENPRINT"[145][145]"SPC(14)" ":GOTO685 700 FL=-1:POKE198,. 701 PRINT""; 702 IF(FL)THENPRINT" [144]B[146]UY S[146]ELL E[146]XIT " 705 IFNOT(FL)THENPRINT" [144] UY ELL XIT " 710 GETA$:IFA$=""THENFL=NOT(FL):GOTO701 711 PRINT" [144]B[146]UY S[146]ELL E[146]XIT " 715 IFA$="B"THENGOSUB735:GOTO701 720 IFA$="S"THENGOSUB825:GOTO701 725 IFA$="E"THEN1050 730 FL=NOT(FL):GOTO701 735 GOSUB950:MR=0:PRINTSPC(21)"[144]BUY ON MARGIN?":POKE198,0 740 GETA$:IFA$=""THEN740 745 IFA$="Y"THENMR=1:GOTO755 750 IFA$<>"N"THEN740 755 GOSUB990:IFA$="X"THENRETURN 760 IFMR=0THEN775 765 IFM-Z/2<-1000THENGOSUB955:GOSUB1020:GOTO765 770 MT=MT+INT(Z/2):M=M-INT(Z/2):GOTO785 775 IFM-Z<-1000THENGOSUB955:GOSUB1020:GOTO775 780 M=M-Z:IFX=0THEN795 785 S(Y)=S(Y)+X 790 Z=INT(X*.1)+1:M=M-Z:CM=CM+Z+10 795 GOSUB950 800 PRINTTAB(7)" "SPC(4)" " 805 PRINTTAB(7)" "SPC(4)" " 810 PRINTTAB(7)" "SPC(4)" " 815 GOSUB950:PRINT"CASH="M:PRINT"COMM="CM:PRINT"MARG="MT 820 GOSUB890:GOSUB950:RETURN 825 GOSUB990:IFA$="X"THEN845 830 IFX>S(Y)THENGOSUB960:GOSUB1020:GOTO830 835 M=M+Z:S(Y)=S(Y)-X:GOSUB790 840 IFMT=0THENGOSUB940:RETURN 845 PRINTSPC(22)"[144]PAY MARGIN?":POKE198,0 850 GETA$:IFA$=""THEN850 855 IFA$="Y"THEN870 860 IFA$="N"THENGOSUB940:RETURN 865 GOTO850 870 C=22:GOSUB980:PRINT"AMOUNT:";:NU=1:AL=.:LE=8:GOSUB60500:X=VAL(C$) 875 IFM-X<-1000THENGOSUB955:GOTO870 880 IFX>MTTHENX=MT 885 M=M-X:MT=MT-X:GOTO795 890 Z=LEN(STR$(S(Y))) 895 IFY>12THEN915 900 IFY=0THENRETURN 905 L=Y+1:GOSUB985:PRINTSPC(17)" " 910 PRINT"[145]"SPC(22-Z)S(Y):RETURN 915 L=Y-11:FORX=13TOY:IFB(X)=2THENL=L-1 920 NEXT:GOSUB985:PRINTSPC(32)"[156] " 925 PRINT"[145]"SPC(38-LEN(STR$(S(Y))))S(Y):RETURN 930 PRINTTAB(19)"INCORRECT INPUT" 935 FORX=1TO2000:NEXT 940 L=17:GOSUB985 945 FORX=1TO3:PRINTTAB(16)" ":NEXT 950 L=17:GOSUB985:RETURN 955 PRINTTAB(19)"NOT ENOUGH MONEY":GOTO965 960 PRINTTAB(19)"NOT ENOUGH SHARES" 965 FORX=1TO2000:NEXT:PRINT"[145][145]"SPC(21)" " 970 PRINTTAB(19)" " 975 L=18:GOSUB985:RETURN 980 POKE211,C:RETURN 985 POKE214,L:PRINT:RETURN 990 A$="X":Y=0:GOSUB940:C=22:GOSUB980:PRINT"[144]STOCK:"; 992 AL=1:NU=.:LE=3:GOSUB60500:A$=C$ 995 IFA$="X"THENGOSUB940:RETURN 1000 IFLEN(A$)<>3THENGOSUB930:GOTO990 1005 FORX=1TO20:IFA$=N$(X)THENY=X 1010 NEXT 1015 IFY=0THENGOSUB930:GOTO990 1020 GOSUB980:X=0:PRINT"[144]SHARES:"; 1022 LE=6:AL=.:NU=1:GOSUB60500:X=VAL(C$):Z=X*P(Y):RETURN 1025 PRINT"[144] [192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192]":RETURN 1030 PRINTSPC(13)"[129]*MARKET NEWS*":RETURN 1035 TL=M-MT:FORX=1TO20:TL=TL+P(X)*S(X):NEXT 1040 IFMT>INT(TL/2)THENMC=MT-INT(TL/2):RETURN 1045 MC=0:RETURN 1050 CM=0:TR=0 1055 IFQ<>4THEND=INT(D(12)/4)*S(12):GOTO1065 1060 FORX=1TO11:D=D+D(X)*S(X):NEXT:D=D+(D(12)-3*INT(D(12)/4))*S(12) 1065 IFPL=1THEN1075 1070 D2=D:D=0:PL=1:M(2)=M:M2=MT:FORX=1TO20:P2(X)=S(X):NEXT:GOTO65 1075 D1=D:D=0:PL=2:M(1)=M:M1=MT:FORX=1TO20:P1(X)=S(X):NEXT 1080 IFNP=1THENPL=1:GOTO65 1085 GOTO460 1090 Y=INT(RND(1)*5):IFY>2THENY=Y-5 1095 RETURN 1100 Y=INT(RND(1)*3)+1:RETURN 1105 PRINT:GOSUB1025 1108 IFNP=1ANDBR(1)=1THENPRINT" YOU ARE BANKRUPT":GOTO1150 1110 IFBR(1)=1ANDBR(2)=1THEN1175 1115 IFBR(1)=1THENGOSUB2000:GOTO1150 1120 IFBR(2)=1THENGOSUB2100:GOTO1150 1125 IFNP=1THEN1150 1130 IFT1>T2THENPL$=P1$:GOTO1145 1135 IFT2>T1THENPL$=P2$:GOTO1145 1140 PRINT:PRINT"[144] *NO WINNER*[146]":GOTO1150 1145 PRINT:PRINT" "PL$" IS THE WINNER" 1150 PRINT:PRINT"[144] GAME OVER[146]--PLAY AGAIN?":POKE198,0 1155 GETA$:IFA$=""THEN1155 1160 IFA$="Y"THENCLR:GOTO0 1165 IFA$<>"N"THEN1155 1170 GOTO60000 1175 PRINT" "P1$" IS BANKRUPT "P2$" IS BANKRUPT":GOTO1140 1180 DATABNK,2,FIN,6,UTL,5,CON,2,DEF,0,MFG,1 1185 DATAGMC,3,TWA,0,EXO,4,MIN,0,BND,8,MKT,4 1190 DATA WILDCAT DRILLING,GENETIC RESEARCH,GOLD NUGGET MINE 1195 DATA DIODE ELECTRONICS,URBAN DEVELOPMENT,TEXAS EXPLORATION 1200 DATA ENERGY ASSOCIATES,DOOMS DAY MINING 1205 DATA WIL,2,GEN,5,GOL,2,DIO,4,URB,4,TEX,2,ENA,5,DOM,2 2000 PRINT" "P1$" IS BANKRUPT "P2$" IS THE WINNER":RETURN 2100 PRINT" "P2$" IS BANKRUPT "P1$" IS THE WINNER":RETURN 60000 OPEN15,8,15,"R0:HELLO CONNECT=HELLO CONNECT":INPUT#15,ER:CLOSE15 60010 IFER<>63THENEND 60020 LOAD"HELLO CONNECT",8 60100 POKE53280, 6:POKE53281, 0:PRINT"[147][142]"; 60110 PRINT"LOADSTARPRESENTS" 60120 PRINT"[164][164][164][164][164][164][164][164][164][164] [146][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164] BULLS A"; 60130 PRINT"ND BEARS [146][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164] [146][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164]"; 60140 PRINT"[164][164][164][164][164] BY KIRK WARD [146][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164] [146]"; 60150 PRINT"[164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164] COPYRIGHT 1988 [146][164][164][164][164][164][164][164][164][164][164][164] "; 60160 PRINT" " 60170 PRINT"PRESSSPACETOCONTINUE" 60180 IFPEEK(203)<>60THEN60180 60190 RETURN 60500 C$="":POKE198,.:PRINT"[164]"; 60510 FORA=1TOLE+1 60520 GETA$:IFA$=""THEN60520 60530 IFA$=CHR$(13)THENPRINT"[157] ":RETURN 60540 IFA$=CHR$(20)ANDA>1THENPRINT"[157][157] [157][157][164]";:A=A-1:C$=LEFT$(C$,A-1):GOTO60520 60550 IF(A=LE+1)THEN60520 60560 IF(NU)AND((A$>="0")AND(A$<="9"))THEN60595 60570 IF(AL)AND((A$>=" "ANDA$<="/")OR(A$>=":"ANDA$<="Z"))THEN60595 60580 IF(AL)THENIF(A$>="[193]"ANDA$<="[218]")THEN60595 60590 GOTO60520 60595 PRINT"[157]"A$;:POKE212,.:PRINT"[164]";:C$=C$+A$:NEXT